Game event display with scroll bar and play event icons

ABSTRACT

A method is disclosed for receiving a plurality of play events associated with a sporting event, wherein each play event of the plurality of play events comprises a timestamp; for each of the play events, associating the play event with a sports team of a plurality of sports teams; for each of the play events, associating with the play event a particular icon from among a plurality of different icons based, at least in part, on the sports team that is associated with the play event; causing to display a bar in a graphical user interface of a mobile computing device, wherein the bar represents at least a portion of a time duration of the sporting event; for each of the play events, causing to display the particular icon at a position in the bar, wherein the position is based, at least in part, on the timestamp of the event.

CROSS-REFERENCE TO RELATED APPLICATIONS; BENEFIT CLAIM

This application claims the benefit of U.S. Provisional Application No.61/870,178 filed Aug. 26, 2013, the entire contents of which are herebyincorporated by reference for all purposes as if fully set forth herein,under 35 U.S.C. §119(e).

TECHNICAL FIELD

The present disclosure relates to displaying information about gameplays for sporting events in the context of computer display devices.The disclosure relates more specifically to techniques for displaying ascrolling summary of game plays associated with a sporting event inmobile computing devices.

BACKGROUND

The approaches described in this section could be pursued, but are notnecessarily approaches that have been previously conceived or pursued.Therefore, unless otherwise indicated herein, the approaches describedin this section are not prior art to the claims in this application andare not admitted to be prior art by inclusion in this section.

Certain games, or sporting events, are comprised of plays. A play may bea series of movements by at least one player, frequently in concert witha team of players, to score points, achieve a goal, or advance theposition of a team, ball, puck, or other object(s). Examples includeplays in the American game of football. Frequently, another player, orteam of players, acts in opposition to prevent advancement.

Fans frequently review game plays for the purpose of experiencing theplay again, viewing details of the play, or analysis of the play or thegame. For example, fans will review one or more plays in which a scorewas made. Accordingly, plays may be made available to fans to review.One method of presenting reviewable plays is to list plays inchronological order. However, merely listing plays consecutively inchronological order may be overwhelming and difficult for a fan to finda particular play that the fan wants to review. Furthermore, fans maynot remember at which point during a game a particular play occurred.Therefore, there is a need for improved techniques of displayinginformation about game plays.

SUMMARY OF THE INVENTION

The appended claims may serve as a summary of the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

In the drawings:

FIG. 1A illustrates an example networked computer system configured toprocess game play event data and provide display data useful in mobilecomputing devices.

FIG. 1B illustrates a process for receiving play events, and displayingplay event icons corresponding to the received play events in a barwithin a graphical user interface, according to an embodiment.

FIG. 2 illustrates a process for receiving and/or determining game playdata, generating markers, updating existing play event icons andmarkers, and displaying the updated play event icons and markers, in anexample embodiment.

FIG. 3 illustrates a process for receiving and applying a filter to thereceived play events, and displaying the play event icons thatcorrespond to the play events that satisfy the filter, in an exampleembodiment.

FIG. 4A illustrates an annotated scroll bar with a compressed frame andgame-state markers, in an example embodiment.

FIG. 4B illustrates an annotated scroll bar with an expanded frame andgame-state markers, in an example embodiment.

FIG. 4C illustrates an annotated scroll bar with a compressed indicatorand game-state markers, in an example embodiment.

FIG. 4D illustrates an annotated scroll bar with an expanded indicatorand game-state markers, in an example embodiment.

FIG. 5 illustrates a computer system upon which an embodiment may beimplemented.

DETAILED DESCRIPTION

Techniques for displaying a scroll bar with play event icons associatedwith a sporting event are described. In the following description, forthe purposes of explanation, numerous specific details are set forth inorder to provide a thorough understanding of the present invention. Itwill be apparent, however, that the present invention may be practicedwithout these specific details. In other instances, well-knownstructures and devices are shown in block diagram form in order to avoidunnecessarily obscuring the present invention.

Embodiments are described herein according to the following outline:

-   -   1.0 General Overview    -   2.0 Structural and Functional Overview        -   2.1 Technical Context        -   2.2 Play Events        -   2.3 Process Overview        -   2.4 Updating Play Event Icons and Generating Markers        -   2.5 Filtering Play Event Icons    -   3.0 Example Graphical User Interface with Scrolling and Icons        -   3.1 Graphical Tiles        -   3.2 Play Event Icons        -   3.3 Markers        -   3.4 Frames and Indicators        -   3.5 Video Scrub Bar        -   3.6 Application    -   4.0 Implementation Mechanisms—Hardware Overview    -   5.0 Extensions and Alternatives

1.0 General Overview

Displaying a scroll bar with play event icons associated with a sportingevent is described. In an embodiment, a method comprises receiving aplurality of play events associated with a sporting event, wherein eachplay event of the plurality of play events comprises a timestamp; foreach play event in the plurality of play events, associating the playevent with a sports team of a plurality of sports teams; for each eventin the plurality of play events, associating with the play event aparticular icon from among a plurality of different icons based, atleast in part, on the sports team that is associated with the playevent; causing to display a bar in a graphical user interface of amobile computing device, wherein the bar represents at least a portionof a time duration of the sporting event; for each play event in theplurality of play events, causing to display the particular icon at aparticular linear position in the bar, wherein the position is based, atleast in part, on the timestamp of the event.

In some embodiments, the particular icon may be associated with the playevent. Additionally or alternatively, each play event of the pluralityof play events may be associated with an event type; for each play eventin the plurality of play events, the particular icon may be determinedbased, at least in part, on the event type that is associated with theevent.

In some embodiments, each play event in the plurality of play eventscomprises an importance field. Additionally, the new play event may bedetermined to be important based, at least in part, on the importancefield, and in response: the new play event may be associated with one ofthe plurality of sports teams; a new particular icon may be determinedbased, at least in part, on the sports team that is associated with thenew play event; the new particular icon may be displayed in the bar. Theposition of the new particular icon in the bar may be based, at least inpart, on the new timestamp.

In some embodiments, a selection of a particular team may be received.In response to the selection, the plurality of play events may befiltered. The icons that are associated with each play event in theplurality of play events that is associated with the particular team maybe displayed. Additionally, the icons that are associated with each playevent in the plurality of play events that is not associated with theparticular team may be caused to not be displayed.

In some embodiments, each play event of the plurality of play events maybe associated with an event type. Furthermore, a selection of aparticular event type may be received. In response to the selection, theplurality of play events may be filtered. The icons that are associatedwith each play event in the plurality of play events that is associatedwith the particular event type may be displayed. Additionally, the iconsthat are associated with each play event in the plurality of play eventsthat is not associated with the particular event type may be caused tonot be displayed.

In some embodiments, game play data is received. In response toreceiving the game play data, for each play event in the plurality ofplay events, the position of the icon in the bar for the play event isupdated.

In some embodiments, a time for one or more time markers is determined,such that each time marker of the one or more time markers includes atime. For each time marker in the one or more time markers, a timemarker icon is displayed in the bar, such that the position of the timemarker icon is based, at least in part, on the time of the time marker.Additionally, each time marker may indicate a quarter number or periodof the sporting event.

In some embodiments, the bar is a scroll bar that is displayed adjacentto a scrollable set of graphical tiles, and each of the graphical tilesdisplays data for one of the play events among the plurality of playevents.

In some embodiments, the bar comprises a linearly movable and expandableframe that is displayed adjacent to a scrollable set of graphical tiles,each of the graphical tiles comprising data for one of the play eventsamong the plurality of play events. Additionally, the frame may bedisplayed in a collapsed format at a present game point of the bar.Input for sliding the frame along the bar away from the present gamepoint may be received. In response, the frame may be displayed in anenlarged format that covers one or more of the icons and in a size thatcorresponds to a number of the graphical tiles that are displayed.

In some embodiments, the bar comprises a linearly movable and expandableframe, with a selectable portion, that is displayed adjacent to ascrollable set of graphical tiles, each of the graphical tilescomprising data for one of the play events among the plurality of playevents. Additionally, the frame may be displayed in a collapsed formatat a present game point of the bar. Input may be received fordetermining the selectable portion is selected. Input may also bereceived for sliding the frame along the bar away from the present gamepoint. In response, the frame may be displayed in an enlarged formatthat covers one or more of the icons. Furthermore, a set of graphicaltiles that correspond with the one or more of the covered icons may bedisplayed.

In some embodiments, the bar comprises a linearly movable and expandableindicator that is displayed within the bar, which is adjacent to ascrollable set of graphical tiles, each of the graphical tilescomprising data for one of the play events among the plurality of playevents. Additionally, the indicator may be displayed in a collapsedformat at a present game point of the bar. Input for sliding theindicator along the bar away from the present game point may bereceived. In response, the indicator may be displayed in an enlargedformat that underscores one or more of the icons and in a size thatcorresponds to a number of the graphical tiles that are displayed.

In some embodiments, each of the play events represents a play in thesporting event. Additionally or alternatively, each of the play eventsrepresents a set of field movements, or drive which comprises one ormore plays, in the sporting event. Additionally or alternatively, a playevent may comprise a set of one or more other play events.

In other embodiments, the invention encompasses a computer apparatus anda computer-readable medium configured to carry out the foregoing steps.

2.0 Structural and Functional Overview

2.1 Technical Context

FIG. 1A illustrates an example networked computer system configured toprocess game play event data and provide display data useful in mobilecomputing devices. In an embodiment, a stadium 10 comprises a site atwhich a sporting event or game is played. Stadium 10 broadly representsany form of arena, field, ground or grounds, park, or other place atwhich a sporting event may be played or undertaken. Typically stadium 10comprises a playing field, pitch, track or other game play facility,seating for public attendees, and fixed or mobile facilities fortechnical personnel who are involved in producing a broadcast, telecast,or other recording of the sporting event. Various embodiments mayinclude stadiums 10 of any size and this disclosure specificallycontemplates the use of stadiums with seating for any of a few hundredto in excess of 50,000 attendees or fans.

One or more game data sources 12 are positioned within or near thestadium and are configured to obtain or record data about game play.Examples of game data sources include television or video cameras, soundrecording equipment, computers associated with statisticians or gamecoverage personnel, and support infrastructure for any of the foregoing.Output of game data sources 12 may include digital or analog audiovisualfeeds representing television or video of the game, pure digital data orstructured data comprising metadata for the game or play events,transcripts, commentary, and other data representing the game or playevents.

Game data sources 12 are communicatively coupled to networkinfrastructure 14 in stadium 10. Network infrastructure 14 may comprisewired network interfaces, wireless access points, routers, switches,access servers, authentication servers, cabling, and related networkingor internetworking equipment or gear.

In an embodiment, network infrastructure is coupled to one or morepublic networks 30 which may comprise any of a LAN, WAN, internetworks,or internets. In an embodiment, a server computer 16 is coupled to thenetwork 30; additionally or alternatively, the server computer may havea direct connection to the network infrastructure, for example, when theserver computer is co-located with the stadium 10 or located nearby.

A plurality of mobile devices 40 are coupled to network infrastructure14 and are located within stadium 10. In various embodiments, mobiledevices 40 may comprise any of smartphones, tablet computers, personaldigital assistants, netbook computers, ultrabook computers, laptopcomputers or other mobile devices. In one embodiment, the mobile devices40 are associated with attendees of stadium 10 and there may bethousands of mobile devices having concurrently active connections tothe network infrastructure 14. Connections may be wired, or may bewireless via wireless access points that are located throughout stadium10 in positions adjacent to seats in the stadium or in other locationscapable of establishing and maintaining multiple concurrent connectionsto the mobile devices 40.

Server computer 16 in FIG. 1A broadly represents one or more physicalcomputers, clusters, or processors in cloud service providers or datacenters. In various embodiments, any number of such computers may beused. In one embodiment, server computer 16 comprises a game datainterface unit 18, a play event processing unit 20, and a presentationunit 22. In an embodiment, game data interface unit 18 is configured torequest and/or receive game play event data from game data sources 12and to format, transform, or otherwise process the game play event datafor use in other functional units. For example, game data interface unitcan perform buffering, classification and categorization functions.

In an embodiment, the play event processing unit 20 is configured toperform filtering, selection, association and other functions in themanner described further herein in connection with the process diagrams.

In an embodiment, the presentation unit 22 is configured to generatedata that can drive displays of external computing devices such assmartphones, tablet computers, other mobile devices, personal computers,web browsers, and other systems. For example, in one embodiment thepresentation unit may implement an HTTP server and/or one or more mobiledevice server-side applications that can interoperate with compatibleclient-side applications or “apps” on the mobile computing devices 40 toprovide data that the apps are capable of rendering in a graphical userinterface on the mobile computing devices. Specific example embodimentsof screen displays for a mobile computing device user interface aredescribed further herein.

2.2 Play Events

In an embodiment, a play event may include, or reference, a recordedsegment of a game. For example, a play event may include a play in asporting event recorded by one or more devices and stored on one or morenon-transitory storage media. “Recorded,” in this sense, includesobtaining pictures, sound, or data, or a combination, relating to asegment of a game as the game is played, and also includes replayingpreviously recorded pictures, sound and/or data for a segment of a gamethat was played in the past. Thus, a segment of a game may betransiently recorded as it occurs, or replayed from stored audiovisualdata. Alternatively or additionally, a play event may include, orreference, a series of plays in a sporting event. A series of plays mayinclude a set of field movements or drives. The series of plays may becontinuous and linear in time. Additionally or alternatively, a drivemay begin when a team first gains possession of the ball, and mayconclude when one or more conditions are satisfied: the possessing teamscores a goal, the possessing team loses possession of the ball, and/ora particular time period ends. Additionally or alternatively, a drivemay be determined by analyzing text, such as the description, in one ormore play events. For example, if a play event description indicates ateam receives possession of the ball, the play event may indicate thebeginning of a drive. Similarly, if a play event description indicatesthe team scores, the play event may indicate the end of a drive.Additionally or alternatively, the series of plays may be recordedsegments of a game stitched together from disjoint time periods, fromvarious points of view, and/or highlighting one or more players orteams. For example, a play event may include, or reference, a series ofvideo clips stitched together of a team receiving a ball, proceeding tothe other end of the playing field, and scoring one or more points.Alternatively or additionally, a play event may include, or reference, aplurality of play events.

A play event may be associated with one or more event types. Forexample, in American football, a play event may be associated with“interceptions”, “punts”, “drives”, “scoring plays”, “touchdowns”,“field goals”, “penalties,” “personal fouls”, “special teams plays,”“big offensive plays”, and/or “big defensive plays”.

A play event may be associated with a particular team. For example, aplay event may be associated with a team that has possession of the ballat the beginning and/or end of a particular play. Additionally oralternatively, a play event may be associated with one or more teams toindicate that the one or more teams are highlighted in the play event.Additionally or alternatively, a play event may be associated with ateam by an operator. Additionally or alternatively, a play event may beassociated with a team automatically.

A play event may be associated with one or more players. For example,one or more players may be highlighted in a play event. Accordingly, theplay event may be associated with each of the highlighted players.

A play event may include, or reference, one or more statistics or gamestates. For example, a play event may include the yards gained duringthe game play, the score, the number of points one or more players havescored, the state of the game play clock at the beginning and/or end ofthe play event, the number of plays contained in the play event, thelength of the play event, the game-clock time or actual time each playevent covers, and a time in one or more time zones.

2.3 Process Overview

FIG. 1B illustrates a process for receiving play events, and displayingplay event icons corresponding to the received play events in a barwithin a graphical user interface, according to an embodiment. WhileFIG. 1B illustrates example steps according to an embodiment, otherembodiments may omit, add to, reorder, and/or modify any of the stepsshown. Referring now to FIG. 1B, in step 110, an application receivesplay events. For example, the application receives a plurality of playevents from a server or a server application. The play events may beformatted in extensible markup language, binary, a proprietary format,and/or any other format readable by the application.

In step 120, the application disregards play events that are notimportant. For example, each play event may include a field, which whenselected designates that the play event is important. Accordingly, theapplication may disregard any play event if the play event field“important” is not selected.

In step 130, the application associates each play event with a team. Forexample, each play event may include a field that designates a team toassociate the play event with. Accordingly, the application mayassociate each play event with its designated team. Alternatively oradditionally, the application may determine which team a play eventshould be associated with based, at least in part, on other dataincluded in the play event.

In step 135, the application associates each play event with an eventtype. For example, each play event may include a field that designatesone or more event types. Accordingly, the application may associate eachplay event with the one or more designated event types. Additionally oralternatively, the application may determine which event types a playevent should be associated with based, at least in part, on other dataincluded in the play event.

In step 140, the application selects a play event icon for each playevent. For example, the application may select each play event iconbased, at least in part, on the team associated with the play event(determined in step 130) and/or the event type associated with the playevent (determined in step 135).

In step 150, the application displays the play event icons within a barin a graphical user interface. For example, for each play event, theapplication displays the selected play event icon in a scroll bar. Theposition of each play event icon in the scroll bar may be based, atleast in part, on the data in each corresponding play event.

In step 160, the application receives new play events. For example, theapplication may receive one or more new play events. Accordingly, theapplication repeats steps 120 through 150 for the newly received playevents.

2.4 Updating Play Event Icons and Generating Markers

FIG. 2 illustrates a process for receiving and/or determining game playdata, generating markers, updating existing play event icons andmarkers, and displaying the updated play event icons and markers, in anexample embodiment. While FIG. 2 illustrates example steps according toan embodiment, other embodiments may omit, add to, reorder, and/ormodify any of the steps shown. Referring now to FIG. 2, in step 210, anapplication receives and/or determines game play data. For example, anapplication may receive game play data from a server or a serverapplication. The game play data may be in formatted extensible markuplanguage, binary, a proprietary format, and/or any other format readableby the application. The game play data may include play events or otherdata related to the game, such as the current game clock time, thecurrent score, or the current position of a team or ball.

In step 220, the application generates markers. For example, in responseto receiving game play data that the game clock has been reset for a newquarter, the application may generate a marker, which indicates thebeginning of the new quarter.

In step 230, the application updates and displays the play event iconsand markers in a graphical user interface. For example, in responsegenerating the marker in step 220, the application may display themarker. Furthermore, in response to receiving the game play data in step220, the application may update the position of the play event icons andpreviously displayed markers.

2.5 Filtering Play Event Icons

FIG. 3 illustrates a process for receiving and applying a filter to thereceived play events, and displaying the play event icons thatcorrespond to the play events that satisfy the filter, in an exampleembodiment. While FIG. 3 illustrates example steps according to anembodiment, other embodiments may omit, add to, reorder, and/or modifyany of the steps shown. Referring now to FIG. 3, in step 310, anapplication receives a selected filter. For example, an application mayreceive user input which indicates play event icons should be displayedwhich correspond to play events that are associated with a particularteam and are also associated with a scoring play.

In step 320, the application displays play event icons which correspondto play events that satisfy the filter. For example, the application mayremove from display any play event icons that do not correspond to aplay event, which is not associated with the particular team or ascoring play. Furthermore, the application may cause to display playevent icons that correspond to play events that are associated with theparticular team and are associated with a scoring play.

3.0 Example Graphical User Interface with Scrolling and Icons

Play events may be displayed in an application executed on a mobiledevice 40 for users to scroll through and view. FIG. 4A, FIG. 4B, FIG.4C, and FIG. 4D illustrate an annotated scroll bars and game-statemarkers, in various example embodiments. FIG. 4A, FIG. 4B, FIG. 4C, andFIG. 4D illustrate various example embodiments for purposes ofillustrating clear examples, other embodiments may omit add to, reorder,and/or modify any of the elements shown. In the embodiment illustratedin FIG. 4A, FIG. 4B, FIG. 4C, and FIG. 4D, application 400 includesgraphical tile list 405 and bar 450. Bar 450 includes play event icons460, 462, 464, 466, and 468, and markers 471, 472, and 473.

3.1 Graphical Tiles

In FIGS. 4A and 4C, graphical tile list 405 includes graphical tile 410,graphical tile 412, and graphical tile 414. In FIG. 4B and FIG. 4D,graphical tile list 405 includes graphical tile 416 and graphical tile418. Graphical tiles 410, 412, 414, 416, and 418 may each be associatedwith, and/or correspond to, a play event, and may include the dataincluded in the play event. For example, graphical tiles 410, 412, and414 include a description from the corresponding play event, whichrefers to one play during a game. Also for example, graphical tiles 416and 418 each include a description from the corresponding play event,which refers to multiple plays stitched together that replay a drive fora particular team.

Graphical tiles 410, 412, 414, 416, and 418 may include otherinformation determined by application 400 or included in thecorresponding play event. For example, a graphical tile may include thecorresponding play event statistics, such as the state of the game playclock, the position of the ball, and/or the score at the end of the playevent. Also for example, the graphical tile may include thecorresponding play event description.

Graphical tiles may be visually different. For example, graphical tiles410, 412, and 414 are visually different than graphical tiles 416 and418. Graphical tiles 410, 412, and 414 include links 411, 413, and 415,respectively, which may link to a video and/or audio recording of one ormore plays. Accordingly, when any of links 411, 413, or 415 are selectedby a user, the linked media may be presented to the user. In contrast,the entire graphical tile of graphical tiles 416 and 418 may be a linkto the media referenced in the corresponding play event. Accordingly,when either of graphical tiles 416 or 418 is selected by a user, thelinked media may be presented to the user. Alternatively oradditionally, in response to a user selecting either graphical tiles 416or 418, each of which may correspond to a play event that comprises aset of play events, new graphical tiles may be displayed to the userwhich each represent a single play event in the set of play events.

Graphical tiles may be color coded based, at least in part, on thecorresponding play event. For example, graphical tile 416 is shadeddifferently than graphical tile 418. Also, for the purpose ofillustrating a clear example, assume that the play event correspondingwith graphical tile 416 is associated with the first team. Accordingly,graphical tile 416 may be displayed with a first color. Further assumethat the play event corresponding with graphical tile 418 is associatedwith a second team. Accordingly, graphical tile 418 may be displayedwith a second, different color. The color(s) assigned to a graphicaltile may be designated in the graphical tile's corresponding play event,or the team color(s) of the team associated with the corresponding playevent.

Graphical tiles may also be visually different based, at least in part,on the data included in the corresponding play event. For example,graphical tile 416 includes a different description than graphical tile418, since graphical tile 416 corresponds to a different play event thangraphical tile 418.

Graphical tiles also may be visually different based, at least in part,on the event types associated with the corresponding play event. Forexample, a graphical tile may include an icon with an upright stand toindicate that the corresponding play event is associated with a fieldgoal or extra point. A graphical tile may include an icon with armsextended upright to indicate that the corresponding play event isassociated with a score, such as a touch down. A graphical tile mayinclude an icon with arms crossed to indicate that the correspondingplay event is associated with a personal foul. Alternatively oradditionally, a graphical tile may include an icon, such as a logo, forthe team associated with the corresponding play event. Graphical tilesmay include a plurality of icons and/or colors.

3.2 Play Event Icons

In FIG. 4A, FIG. 4B, FIG. 4C, and FIG. 4D, bar 450 includes play eventicons 460, 462, 464, 466, and 468. Each of play event icons 460, 462,464, 466, and 468 may be associated with, or may correspond to, a playevent. Furthermore, each of play event icons 460, 462, 464, 466, and 468may be associated with, or may correspond to, a graphical tile ingraphical tile list 405. For the purpose of illustrating a clearexample, assume play event icon 462 corresponds to the same play eventas graphical tile 416. Accordingly, play event icon 462 may beassociated with graphical tile 416. Similarly, play event icon 464 maycorrespond to the same play event as graphical tile 418. Accordingly,play event icon 464 with graphical tile 418.

Play event icons may be color coded based, at least in part, on thecorresponding play event. For example, play event icon 462 may be shadeddifferently than play event icon 464. Furthermore, for the purpose ofillustrating a clear example, assume that the play event thatcorresponds to play event icon 462 is associated with a first team.Accordingly, play event icon 462 may be displayed with a first color.Further assume that the play event that corresponds to play event icon464 is associated with a second team. Accordingly, play event icon 464may be displayed with a second, different color. The color(s) assignedto a play event icon may be designated in the play event icon'scorresponding play event, or the team color(s) of the team associatedwith the corresponding play event.

Alternatively or additionally, a play event icon may visually correspondwith the corresponding graphical tile. For example, play event icon 462has cross-hatching similar to graphical tile 416. Likewise, play eventicon 464 does not have cross-hatching since graphical tile 418 also doesnot have cross-hatching.

Play event icons may be visually different based, at least in part, onthe types of plays the corresponding play event is associated with. Forexample, a play event icon may include an icon with an upright stand toindicate that the corresponding play event is associated with a fieldgoal or extra point. A play event icon may include an icon with armsextended upright to indicate that the corresponding play event isassociated with a score, such as a touch down. A play event icon mayinclude an icon with arms crossed to indicate that the correspondingplay event is associated with a personal foul. Alternatively oradditionally, a play event icon may include an image, such as a logo,for the team associated with the corresponding play event.

The position of each play event icon in the bar may be based, at leastin part, on the location of the corresponding graphical tile in thegraphical tile list 405. For example, in FIG. 4B, expanded frame 454covers play event icons 462 and 464 because corresponding graphicaltiles 416 and 418 are currently in view within graphical tile list 405.Similarly, in FIG. 4D, expanded indicator 458 underscores play eventicons 462 and 464 because corresponding graphical tiles 416 and 418 arecurrently in view within graphical tile list 405.

The position of each play event icon in the bar may be based, at leastin part, on the starting and/or ending game clock time of thecorresponding play event. For purposes of illustrating a clear example,assume that each quarter in a game is fourteen minutes long. Asillustrated in graphical tile 418, the game clock starting time isapproximately half way through the second quarter. Accordingly, playevent icon 464, which corresponds with the same play event thatgraphical tile 418 corresponds to, is located approximately half thedistance between markers 472 and 473, since markers 472 and 473 indicatethe beginning of the second quarter and the third quarter, respectively.

A play event icon need not be displayed for all graphical tiles. Forexample, no play event icon precedes play event icon 464 during thesecond quarter, but a graphical tile is depicted in FIG. 4B thatcorresponds to a play event that starts with eight minutes and fifteenseconds left in the second quarter according to the game clock asillustrated in the graphical tile.

A play event icon may be displayed based, at least in part, on thecorresponding play event indicating that the play event is marked as, ordetermined to be, important. For example, a play event may be determinedto be important if any of the following are indicated in the play event:a different team has possession of the ball at the end of the play, ateam scores, and/or a team has progressed the position of the ball aparticular distance. Also for example, a play event may be determined tobe important if an “important” field is selected. The “important” fieldmay be selected automatically by an application or device distributingplay events or by application 400. Alternatively or additionally, the“important” field may be selected manually by an operator or user,either before or after application 400 receives the play event.

3.3 Markers

In FIG. 4A, FIG. 4B, FIG. 4C, and FIG. 4D, bar 450 includes markers 471,472, and 473. Markers may indicate particular milestones within a game,such as the beginning of a quarter, period, or overtime. For example,marker 471 marks the beginning of the first quarter of a game.Accordingly, marker 471 is labeled “Q1”. Similarly, markers 472 and 473indicate the beginning of the second quarter and the third quarter,respectively. Markers may also mark particular penalties or othermilestones or times within a game. Markers need not be associated withany play event. Additionally or alternatively, markers may be associatedwith a time or timestamp corresponding to a game clock or other time.

The position of the markers in the bar may be based, at least in part,on the play event icons displayed in the bar. For example, marker 472,which indicates the beginning of the second quarter, precedes play eventicons 462 and 464 in bar 450, because the play events corresponding toplay event icons 462 and 464 take place during the second quarter asindicated in corresponding graphical tiles 416 and 418. Accordingly,marker 473 follows play event icons 462 and 464, since the position ofmarker 473 indicates the beginning of the third quarter.

The position of the markers in the bar may be based, at least in part,on the game clock or other time. For purposes of illustrating a clearexample, assume that the length of the first quarter is the same as thelength of the second quarter, at least according to the game clock.Accordingly, marker 471 may be the same distance from marker 472, asmarker 472 is from marker 473.

3.4 Frames and Indicators

Frames and indicators may be used to visually indicate which graphicaltiles are being displayed. For example, FIG. 4A and FIG. 4B illustrate alinearly movable and expandable frame, FIG. 4A illustrates collapsedframe 452 and FIG. 4B illustrates expanded frame 454. In the embodimentillustrated in FIG. 4A, displaying collapsed frame 452 nearest to thetext, “LIVE”, indicates that one or more of the present or most currentplay events, which have been received by application 400, are currentlydisplayed as graphical tiles in graphical tile list 405. In theembodiment illustrated in FIG. 4B, expanded frame 454, which covers playevent icons 462 and 464, indicates that corresponding graphical tiles416 and 418 are currently visible in graphical tile list 405.

Alternatively or additionally, the frame, or a portion of the frame, maybe selectable and may be used to scroll through graphical tiles. Forexample, in FIG. 4A and FIG. 4B, collapsed frame 452 and expanded frame454 may be selected by a user. According to user input, the collapsedframe 452 and/or expanded frame 454 may move along bar 450. Furthermore,the graphical tiles that correspond with the play event icons covered byeither collapsed frame 452 or expanded frame 454 may be visible ingraphical tile list 405.

Alternatively or additionally, the graphical tiles listed in graphicaltile list 405 may be scrolled through. Accordingly, an indicator in bar450 may be updated to visually indicate which graphical tiles arecurrently displayed. For example, FIG. 4C and FIG. 4D illustrate alinearly movable and expandable indicator. FIG. 4C illustrates collapsedindicator 456. FIG. 4D illustrates expanded indicator 458. In theembodiment illustrated in FIG. 4C, displaying collapsed indicator 456nearest to the text, “LIVE”, indicates that one or more of the presentor most current play events, which have been received by application400, are currently displayed as graphical tiles in graphical tile list405. In the embodiment illustrated in FIG. 4D, expanded indicator 458,which underscores play event icons 462 and 464, indicates thatcorresponding graphical tiles 416 and 418 are currently visible ingraphical tile list 405.

Alternatively or additionally, a marker or scrubber may be used toindicate which graphical tiles may be visible in graphical tile list405.

3.5 Video Scrub Bar

The scroll bar described herein may be displayed adjacent to, and/orassociated, a video of one or more plays; each play may correspond toone or more play events. For example, a mobile application running on amobile device may play a video of a drive comprising three plays, eachplay corresponding to a different play event. Accordingly, play eventicons displayed in the scroll bar may be associated with, or correspondto, a play event represented in the video. Additionally oralternatively, the position of a play event icon may indicate the timeand/or place in the video a particular play begins or ends, based, atleast in part, on the corresponding play event. Additionally oralternatively, a play event icon may visually indicate which team haspossession of the ball during a play in the video. Additionally oralternatively, a play event icon may visually indicate any other aspectof a play or play event described herein. Additionally or alternatively,portions of the scroll bar may be colored to indicate which team haspossession of the ball. Additionally or alternatively, a frame orindicator may be used to depict which play is currently displayed in avideo.

For purposes of illustrating a clear example, assume that a videocomprises three plays, and that each of the three plays correspond to aplay event. Accordingly, a scroll bar adjacent to the video may includethree play event icons, each of which indicate at which point in thevideo the corresponding play begins. The scroll bar may also include aframe or indicator that depicts which play is currently being displayed.A frame or indicator may depict the location of the play head in thevideo.

3.6 Application

Application 400 may also be an application running on a computing devicesuch as one of the mobile devices 40 of FIG. 1A. For example,application 400 may be a mobile application running on a mobile device,such as a mobile phone or tablet. Application 400 may also be anapplication running on a desktop or laptop computer.

Application 400 may be restricted, such that one or more features may beperformed during select times and/or places. For example, application400 may be configured to perform during a particular game, and may beconfigured to terminate performance of one or more features after thegame has finished. Also for example, application 400 may be configuredto perform one or more features while the device, which application 400is running on, is within a particular distance from the location thatthe game is, or was, being played at, and to terminate performance ofthe one or more features otherwise.

4.0 Hardware Overview

According to one embodiment, the techniques described herein areimplemented by one or more special-purpose computing devices. Thespecial-purpose computing devices may be hard-wired to perform thetechniques, or may include digital electronic devices such as one ormore application-specific integrated circuits (ASICs) or fieldprogrammable gate arrays (FPGAs) that are persistently programmed toperform the techniques, or may include one or more general purposehardware processors programmed to perform the techniques pursuant toprogram instructions in firmware, memory, other storage, or acombination. Such special-purpose computing devices may also combinecustom hard-wired logic, ASICs, or FPGAs with custom programming toaccomplish the techniques. The special-purpose computing devices may bedesktop computer systems, portable computer systems, handheld devices,networking devices or any other device that incorporates hard-wiredand/or program logic to implement the techniques.

For example, FIG. 5 is a block diagram that illustrates a computersystem 500 upon which an embodiment of the invention may be implemented.Computer system 500 includes a bus 502 or other communication mechanismfor communicating information, and a hardware processor 504 coupled withbus 502 for processing information. Hardware processor 504 may be, forexample, a general purpose microprocessor.

Computer system 500 also includes a main memory 506, such as a randomaccess memory (RAM) or other dynamic storage device, coupled to bus 502for storing information and instructions to be executed by processor504. Main memory 506 also may be used for storing temporary variables orother intermediate information during execution of instructions to beexecuted by processor 504. Such instructions, when stored innon-transitory storage media accessible to processor 504, rendercomputer system 500 into a special-purpose machine that is customized toperform the operations specified in the instructions.

Computer system 500 further includes a read only memory (ROM) 508 orother static storage device coupled to bus 502 for storing staticinformation and instructions for processor 504. A storage device 510,such as a magnetic disk or optical disk, is provided and coupled to bus502 for storing information and instructions.

Computer system 500 may be coupled via bus 502 to a display 512, such asa cathode ray tube (CRT), for displaying information to a computer user.An input device 514, including alphanumeric and other keys, is coupledto bus 502 for communicating information and command selections toprocessor 504. Another type of user input device is cursor control 516,such as a mouse, a trackball, or cursor direction keys for communicatingdirection information and command selections to processor 504 and forcontrolling cursor movement on display 512. This input device typicallyhas two degrees of freedom in two axes, a first axis (e.g., x) and asecond axis (e.g., y), that allows the device to specify positions in aplane.

Computer system 500 may implement the techniques described herein usingcustomized hard-wired logic, one or more ASICs or FPGAs, firmware and/orprogram logic which in combination with the computer system causes orprograms computer system 500 to be a special-purpose machine. Accordingto one embodiment, the techniques herein are performed by computersystem 500 in response to processor 504 executing one or more sequencesof one or more instructions contained in main memory 506. Suchinstructions may be read into main memory 506 from another storagemedium, such as storage device 510. Execution of the sequences ofinstructions contained in main memory 506 causes processor 504 toperform the process steps described herein. In alternative embodiments,hard-wired circuitry may be used in place of or in combination withsoftware instructions.

The term “storage media” as used herein refers to any non-transitorymedia that store data and/or instructions that cause a machine tooperation in a specific fashion. Such storage media may comprisenon-volatile media and/or volatile media. Non-volatile media includes,for example, optical or magnetic disks, such as storage device 510.Volatile media includes dynamic memory, such as main memory 506. Commonforms of storage media include, for example, a floppy disk, a flexibledisk, hard disk, solid state drive, magnetic tape, or any other magneticdata storage medium, a CD-ROM, any other optical data storage medium,any physical medium with patterns of holes, a RAM, a PROM, and EPROM, aFLASH-EPROM, NVRAM, any other memory chip or cartridge.

Storage media is distinct from but may be used in conjunction withtransmission media. Transmission media participates in transferringinformation between storage media. For example, transmission mediaincludes coaxial cables, copper wire and fiber optics, including thewires that comprise bus 502. Transmission media can also take the formof acoustic or light waves, such as those generated during radio-waveand infra-red data communications.

Various forms of media may be involved in carrying one or more sequencesof one or more instructions to processor 504 for execution. For example,the instructions may initially be carried on a magnetic disk or solidstate drive of a remote computer. The remote computer can load theinstructions into its dynamic memory and send the instructions over atelephone line using a modem. A modem local to computer system 500 canreceive the data on the telephone line and use an infra-red transmitterto convert the data to an infra-red signal. An infra-red detector canreceive the data carried in the infra-red signal and appropriatecircuitry can place the data on bus 502. Bus 502 carries the data tomain memory 506, from which processor 504 retrieves and executes theinstructions. The instructions received by main memory 506 mayoptionally be stored on storage device 510 either before or afterexecution by processor 504.

Computer system 500 also includes a communication interface 518 coupledto bus 502. Communication interface 518 provides a two-way datacommunication coupling to a network link 520 that is connected to alocal network 522. For example, communication interface 518 may be anintegrated services digital network (ISDN) card, cable modem, satellitemodem, or a modem to provide a data communication connection to acorresponding type of telephone line. As another example, communicationinterface 518 may be a local area network (LAN) card to provide a datacommunication connection to a compatible LAN. Wireless links may also beimplemented. In any such implementation, communication interface 518sends and receives electrical, electromagnetic or optical signals thatcarry digital data streams representing various types of information.

Network link 520 typically provides data communication through one ormore networks to other data devices. For example, network link 520 mayprovide a connection through local network 522 to a host computer 524 orto data equipment operated by an Internet Service Provider (ISP) 526.ISP 526 in turn provides data communication services through the worldwide packet data communication network now commonly referred to as the“Internet” 528. Local network 522 and Internet 528 both use electrical,electromagnetic or optical signals that carry digital data streams. Thesignals through the various networks and the signals on network link 520and through communication interface 518, which carry the digital data toand from computer system 500, are example forms of transmission media.

Computer system 500 can send messages and receive data, includingprogram code, through the network(s), network link 520 and communicationinterface 518. In the Internet example, a server 530 might transmit arequested code for an application program through Internet 528, ISP 526,local network 522 and communication interface 518.

The received code may be executed by processor 504 as it is received,and/or stored in storage device 510, or other non-volatile storage forlater execution.

In the foregoing specification, embodiments of the invention have beendescribed with reference to numerous specific details that may vary fromimplementation to implementation. The specification and drawings are,accordingly, to be regarded in an illustrative rather than a restrictivesense. The sole and exclusive indicator of the scope of the invention,and what is intended by the applicants to be the scope of the invention,is the literal and equivalent scope of the set of claims that issue fromthis application, in the specific form in which such claims issue,including any subsequent correction.

5.0 Extensions and Alternatives

In the foregoing specification, embodiments of the invention have beendescribed with reference to numerous specific details that may vary fromimplementation to implementation. Thus, the sole and exclusive indicatorof what is the invention, and is intended by the applicants to be theinvention, is the set of claims that issue from this application, in thespecific form in which such claims issue, including any subsequentcorrection. Any definitions expressly set forth herein for termscontained in such claims shall govern the meaning of such terms as usedin the claims. Hence, no limitation, element, property, feature,advantage or attribute that is not expressly recited in a claim shouldlimit the scope of such claim in any way. The specification and drawingsare, accordingly, to be regarded in an illustrative rather than arestrictive sense.

1. A method comprising: receiving a plurality of play events associated with a sporting event, wherein each play event of the plurality of play events comprises a timestamp; for each play event in the plurality of play events, associating with the play event with a sports team of a plurality of sports teams; for each event in the plurality of play events, associating with the play event a particular icon from among a plurality of different icons based, at least in part, on the sports team that is associated with the play event; wherein each icon of the plurality of different icons has a different visual appearance based on which sports team is associated with the icon; causing to display a bar in a graphical user interface of a mobile computing device, wherein the bar represents at least a portion of a time duration of the sporting event; for each play event in the plurality of play events, causing to display the particular icon at a particular linear position in the bar, wherein the position is based, at least in part, on the timestamp of the event; wherein the visual appearance of the particular icon is based on the sports team associated with the play event associated with the particular icon; wherein the method is performed by one or more computing devices.
 2. The method of claim 1 comprising associating the particular icon with the play event based upon which sports team then currently possesses a ball during play of the sporting event.
 3. The method of claim 1 comprising: associating each play event of the plurality of play events with an event type; for each play event in the plurality of play events, determining the particular icon based, at least in part, on the event type that is associated with the event.
 4. The method of claim 1, wherein each play event in the plurality of play events comprises an importance field, the method comprising: receiving a new play event comprising a new timestamp and a new importance field; determining that the new play event is important based, at least in part, on the importance field, and in response: associating the new play event with one of the plurality of sports teams; determining a new particular icon based, at least in part, on the sports team that is associated with the new play event; causing to display the new particular icon in the bar, wherein a new position of the new particular icon in the bar is based, at least in part, on the new timestamp.
 5. The method of claim 1 comprising: receiving a selection of a particular team; in response to the selection, filtering the plurality of play events and causing to display the icons that are associated with each play event in the plurality of play events that is associated with the particular team, and causing to not display of the icons that are associated with each play event in the plurality of play events that is not associated with the particular team.
 6. The method of claim 1 comprising: associating each play event of the plurality of play events with an event type; receiving a selection of a particular event type; in response to the selection, filtering the plurality of play events and causing to display the icons that are associated with each play event in the plurality of play events that is associated with the particular event type, and causing to not display the icons that are associated with each play event in the plurality of play events that is not associated with the particular event type.
 7. The method of claim 1 comprising: receiving game play data; in response to receiving the game play data, for each play event in the plurality of play events, updating the position of the icon in the bar for the play event.
 8. The method of claim 1 comprising: determining one or more times for one or more time markers, respectively, wherein each time marker of the one or more time markers includes a time; for each time marker in the one or more time markers, causing to display a time marker icon in the bar, wherein a position of the time marker icon is based, at least in part, on the time of the time marker.
 9. The method of claim 1, wherein the bar is a scroll bar, and comprising: displaying the scroll bar adjacent to a scrollable set of graphical tiles; and displaying, in each of the graphical tiles, data for one of the play events among the plurality of play events.
 10. The method of claim 1, wherein the bar comprises a linearly movable and expandable frame that is displayed adjacent to a scrollable set of graphical tiles, each of the graphical tiles comprising data for one of the play events among the plurality of play events, and comprising: causing to display the frame in a collapsed format at a present game point of the bar; receiving input for sliding the frame along the bar away from the present game point; causing to display the frame in an enlarged format that covers one or more of the icons and in a size that corresponds to a number of the graphical tiles that are displayed.
 11. The method of claim 1, wherein the bar comprises a linearly movable and expandable frame, with a selectable portion, that is displayed adjacent to a scrollable set of graphical tiles, each of the graphical tiles comprising data for one of the play events among the plurality of play events, and comprising: causing to display the frame in a collapsed format at a present game point of the bar; receiving input for determining the selectable portion is selected; receiving input for sliding the frame along the bar away from the present game point; causing to display the frame in an enlarged format that covers one or more of the icons; causing to display a set of graphical tiles that correspond with the one or more of the covered icons.
 12. The method of claim 1, wherein the bar comprises a linearly movable and expandable indicator that is displayed within the bar, which is adjacent to a scrollable set of graphical tiles, each of the graphical tiles comprising data for one of the play events among the plurality of play events, and comprising: causing to display the indicator in a collapsed format at a present game point of the bar; receiving input for sliding the indicator along the bar away from the present game point; causing to display the indicator in an enlarged format that underscores one or more of the icons and in a size that corresponds to a number of the graphical tiles that are displayed.
 13. One or more non-transitory computer-readable media storing one or more sequences of instructions which, when executed by one or more computing devices, cause: receiving a plurality of play events associated with a sporting event, wherein each play event of the plurality of play events comprises a timestamp; for each play event in the plurality of play events, associating the play event with a sports team of a plurality of sports teams; for each event in the plurality of play events, associating with the play event a particular icon from among a plurality of different icons based, at least in part, on the sports team that is associated with the play event; wherein each icon of the plurality of different icons has a different visual appearance based on which sports team is associated with the icon; causing to display a bar in a graphical user interface of a mobile computing device, wherein the bar represents at least a portion of a time duration of the sporting event; for each play event in the plurality of play events, causing to display the particular icon at a particular linear position in the bar, wherein the position is based, at least in part, on the timestamp of the event; wherein the visual appearance of the particular icon is based on the sports team associated with the play event associated with the particular icon.
 14. The one or more non-transitory computer-readable media of claim 13, comprising instructions which when executed cause associating the particular icon with the play event based upon which sports team then currently possesses a ball during play of the sporting event.
 15. The one or more non-transitory computer-readable media of claim 13, comprising instructions which when executed cause: associating each play event of the plurality of play events with an event type; for each play event in the plurality of play events, determining the particular icon based, at least in part, on the event type that is associated with the event.
 16. The one or more non-transitory computer-readable media of claim 13, wherein each play event in the plurality of play events comprises an importance field, and comprising instructions which when executed cause: receiving a new play event comprising a new timestamp and a new importance field; determining that the new play event is important based, at least in part, on the importance field, and in response: associating the new play event with one of the plurality of sports teams; determining a new particular icon based, at least in part, on the sports team that is associated with the new play event; causing to display the new particular icon in the bar, wherein a new position of the new particular icon in the bar is based, at least in part, on the new timestamp.
 17. The one or more non-transitory computer-readable media of claim 13, comprising instructions which when executed cause: receiving a selection of a particular team; in response to the selection, filtering the plurality of play events and causing to display the icons that are associated with each play event in the plurality of play events that is associated with the particular team, and causing to not display of the icons that are associated with each play event in the plurality of play events that is not associated with the particular team.
 18. The one or more non-transitory computer-readable media of claim 13, comprising instructions which when executed cause: associating each play event of the plurality of play events with an event type; receiving a selection of a particular event type; in response to the selection, filtering the plurality of play events and causing to display the icons that are associated with each play event in the plurality of play events that is associated with the particular event type, and causing to not display the icons that are associated with each play event in the plurality of play events that is not associated with the particular event type.
 19. The one or more non-transitory computer-readable media of claim 13, comprising instructions which when executed cause: receiving game play data; in response to receiving the game play data, for each play event in the plurality of play events, updating the position of the icon in the bar for the play event.
 20. The one or more non-transitory computer-readable media of claim 13, comprising instructions which when executed cause: determining one or more times for one or more time markers, respectively, wherein each time marker of the one or more time markers includes a time; for each time marker in the one or more time markers, causing to display a time marker icon in the bar, wherein a position of the time marker icon is based, at least in part, on the time of the time marker.
 21. The one or more non-transitory computer-readable media of claim 13, wherein the bar is a scroll bar, and comprising instructions which when executed cause: displaying the scroll bar adjacent to a scrollable set of graphical tiles; and displaying, in each of the graphical tiles, data for one of the play events among the plurality of play events.
 22. The one or more non-transitory computer-readable media of claim 13, wherein the bar comprises a linearly movable and expandable frame that is displayed adjacent to a scrollable set of graphical tiles, each of the graphical tiles comprising data for one of the play events among the plurality of play events, and comprising instructions which when executed cause: causing to display the frame in a collapsed format at a present game point of the bar; receiving input for sliding the frame along the bar away from the present game point; causing to display the frame in an enlarged format that covers one or more of the icons and in a size that corresponds to a number of the graphical tiles that are displayed.
 23. The one or more non-transitory computer-readable media of claim 13, wherein the bar comprises a linearly movable and expandable frame, with a selectable portion, that is displayed adjacent to a scrollable set of graphical tiles, each of the graphical tiles comprising data for one of the play events among the plurality of play events, and comprising instructions which when executed cause: causing to display the frame in a collapsed format at a present game point of the bar; receiving input for determining the selectable portion is selected; receiving input for sliding the frame along the bar away from the present game point; causing to display the frame in an enlarged format that covers one or more of the icons; causing to display a set of graphical tiles that correspond with the one or more of the covered icons.
 24. The one or more non-transitory computer-readable media of claim 13, wherein the bar comprises a linearly movable and expandable indicator that is displayed within the bar, which is adjacent to a scrollable set of graphical tiles, each of the graphical tiles comprising data for one of the play events among the plurality of play events, and comprising instructions which when executed cause: causing to display the indicator in a collapsed format at a present game point of the bar; receiving input for sliding the indicator along the bar away from the present game point; causing to display the indicator in an enlarged format that underscores one or more of the icons and in a size that corresponds to a number of the graphical tiles that are displayed.
 25. The method of claim 1, wherein only icons that represent scoring plays and new quarters are displayed in the bar.
 26. The method of claim 1, wherein each icon of the plurality of different icons is associated with a different color or logo based on which sports team is associated with the icon.
 27. The one or more non-transitory computer-readable media of claim 13, wherein only icons that represent scoring plays and new quarters are displayed in the bar.
 28. The one or more non-transitory computer-readable media of claim 13, wherein each icon of the plurality of different icons is associated with a different color or logo based on which sports team is associated with the icon. 